diff --git a/include/asm-blackfin/blackfin-config-post.h b/include/asm-blackfin/blackfin-config-post.h
index 6a1ffa1..0ab68ac 100644
--- a/include/asm-blackfin/blackfin-config-post.h
+++ b/include/asm-blackfin/blackfin-config-post.h
@@ -10,7 +10,7 @@
 #define __ASM_BLACKFIN_CONFIG_POST_H__
 
 /* Check to make sure everything fits in external RAM */
-#if ((CFG_MONITOR_BASE + CFG_MONITOR_LEN) > CFG_MAX_RAM_SIZE)
+#if ((CONFIG_SYS_MONITOR_BASE + CONFIG_SYS_MONITOR_LEN) > CONFIG_SYS_MAX_RAM_SIZE)
 # error Memory Map does not fit into configuration
 #endif
 
@@ -20,8 +20,8 @@
 #endif
 
 /* Make sure the structure is properly aligned */
-#if ((CFG_GBL_DATA_ADDR & -4) != CFG_GBL_DATA_ADDR)
-# error CFG_GBL_DATA_ADDR: must be 4 byte aligned
+#if ((CONFIG_SYS_GBL_DATA_ADDR & -4) != CONFIG_SYS_GBL_DATA_ADDR)
+# error CONFIG_SYS_GBL_DATA_ADDR: must be 4 byte aligned
 #endif
 
 /* Set default CONFIG_VCO_HZ if need be */
diff --git a/include/asm-blackfin/blackfin-config-pre.h b/include/asm-blackfin/blackfin-config-pre.h
index f2c44f7..541cb76 100644
--- a/include/asm-blackfin/blackfin-config-pre.h
+++ b/include/asm-blackfin/blackfin-config-pre.h
@@ -15,10 +15,10 @@
 #define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0]))
 
 /* Configurable Blackfin-specific monitor commands */
-#define CFG_BFIN_CMD_BOOTLDR     0x01
-#define CFG_BFIN_CMD_CPLBINFO    0x02
-#define CFG_BFIN_CMD_OTP         0x04
-#define CFG_BFIN_CMD_CACHE_DUMP  0x08
+#define CONFIG_SYS_BFIN_CMD_BOOTLDR     0x01
+#define CONFIG_SYS_BFIN_CMD_CPLBINFO    0x02
+#define CONFIG_SYS_BFIN_CMD_OTP         0x04
+#define CONFIG_SYS_BFIN_CMD_CACHE_DUMP  0x08
 
 /* Bootmode defines -- your config needs to select this via BFIN_BOOT_MODE.
  * Depending on your cpu, some of these may not be valid, check your HRM.
diff --git a/include/asm-blackfin/global_data.h b/include/asm-blackfin/global_data.h
index 2f40870..5c9903b 100644
--- a/include/asm-blackfin/global_data.h
+++ b/include/asm-blackfin/global_data.h
@@ -35,7 +35,7 @@
  * global variables during system initialization (until we have set
  * up the memory controller so that we can use RAM).
  *
- * Keep it *SMALL* and remember to set CFG_GBL_DATA_SIZE > sizeof(gd_t)
+ * Keep it *SMALL* and remember to set CONFIG_SYS_GBL_DATA_SIZE > sizeof(gd_t)
  */
 typedef struct global_data {
 	bd_t *bd;
